﻿#include "blog_event_handler.h"
#include "blog_event_handler_activator.h"
#include <service/event/ctkEventConstants.h>
#include <QtDebug>

void BlogEventHandlerActivator::start(ctkPluginContext* context)
{
    m_pEventHandler = new BlogEventHandler();

    ctkDictionary props;  // 用于存储服务注册属性。
    // 一旦事件符合指定的主题和过滤器条件，事件管理器就会将事件发送给相应的事件处理程序。
    props[ctkEventConstants::EVENT_TOPIC] = "org/commontk/bloggenerator/published";  // 也可以指定插件的名称。
    props[ctkEventConstants::EVENT_FILTER] = "(author=zxq)";  // 事件过滤器 表示 BlogEventHandler 只处理作者为 zxq 的事件。
    context->registerService<ctkEventHandler>(m_pEventHandler, props);
}

void BlogEventHandlerActivator::stop(ctkPluginContext* context)
{
    Q_UNUSED(context)

    delete m_pEventHandler;
}

